package com.example.demo.service.impl;

import com.example.demo.Util.Result;
import com.example.demo.Util.ResultUtil;
import com.example.demo.mapper.LabMap;
import com.example.demo.po.Lab;
import com.example.demo.service.LabService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.thymeleaf.util.StringUtils;

import java.util.List;

@Service
public class LabServiceImpl implements LabService {

    @Autowired
    LabMap labMap;

    @Override
    public Result SaveLab(Lab lab) {
        if(lab == null){
            return ResultUtil.fail("Null Exception");
        }
       if(StringUtils.isEmpty(lab.getName())){
           return ResultUtil.fail("名称参数必填.");
       }

        //重名
        List<Lab> list = labMap.SearchLabsByName(lab.getName());
        if( list.size()>0&&list.get(0).getId()!=lab.getId()) {
            return ResultUtil.fail("名称重复了");
        }

        labMap.SaveLab(lab);


        return ResultUtil.success(lab);
    }

    @Override
    public Result UpdateLabs(Lab lab) {
        if(lab == null){
            return ResultUtil.fail("Null Exception");
        }
        if(StringUtils.isEmpty(lab.getName())){
            return ResultUtil.fail("名称参数必填.");
        }

        //重名
        List<Lab> list = labMap.SearchLabsByName(lab.getName());
        if( list.size()>0&&list.get(0).getId()!=lab.getId()) {
            return ResultUtil.fail("名称重复了");
        }

        labMap.UpdateLabs(lab);


        return ResultUtil.success("更新成功");
    }
}
